今天要來講Naïve Bayes,但在開始前我們先來看看什麼事貝氏定理(Bayes’ theorem)。貝氏定理是用來描述在已知條件情況下,某件事情發生的機率。
在上式中,P(A | B)稱為事件A的事後機率,也就是已知B事件已經發生的情況下,A事件發生的機率。
在了解貝氏定理後,Naïve Bayes的目標就是要找到一個A事件,讓P(A | B)的機率可以最大。舉例來說,P(出門 | 下雨) = 0.3、P(在家 | 下雨) = 0.7,則我們的結論就是分類為『在家』,因為0.7 > 0.3。
我們可以將貝氏定理的比較簡化如下。由於P(B)(B事件發生的機率)為固定,因此我們在求出A事件為何時可以忽略P(B)的計算。
心情 | 天氣 | 出門與否 |
---|---|---|
3 | 不好 | 出門 |
2 | 好 | 出門 |
2 | 不好 | 不出門 |
3 | 好 | 出門 |
1 | 不好 | 不出門 |
1 | 好 | 不出門 |
2 | 不好 | 不出門 |
3 | 好 | 出門 |
3 | 不好 | 出門 |
2 | 好 | 出門 |
拿上述的例子,若是今天有一個新的資料{心情:1, 天氣:好},則我們是否會出門呢?
Step1:計算出門和不出門的機率。
P(出門) = 6 / 10、P(不出門) = 4 / 10
Step2:計算出門和不出門時,心情 = 1的機率
P(心情 = 1 | 出門) = 0、P(心情 = 1 | 不出門) = 1 / 4
Step3:計算出門和不出門時,天氣好的機率
P(天氣好 | 出門) = 4 / 6、P(天氣好 | 不出門) = 1 / 4
Step4:代入公式檢查
A事件為出門:
P(B | A) * P(A) = 0 * 4 / 6 * 6 / 10 = 0
A事件為不出門:
P(B | A) * P(A) = 1 / 4 * 1 / 4 * 4 / 10 = 1 / 40
當A事件為『出門』時,我們得出的機率為0,而當A事件為『不出門』時,我們得出的機率為 1/40 ,因此我們最終的結果為『不出門』。